Non-repeatable reads
transactionの中で同一行を2回readした時に異なる結果になること
select時にread lockが取られない時に起きる
その行へのlockがselectの終了後に解放される時にも起きる
Multiversion concurrency control(MVCC)
例→
https://en.wikipedia.org/wiki/Isolation_(database_systems)
防ぐ戦略が2つある
T2を遅らせる(T1の終了まで)
T2のコミットは先に行われるがT1は元の「バージョン」をみる
コミットするときにチェックしてダメならserialization errorにする